.fx-autocomplete {
  display: inline-block;

  > .autocomplete-list {
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    padding: 10px 0 5px 0;
    overflow: hidden;

    @keyframes fx-select-dropdown-animation-bottom {
      from {
        transform: translateY(-100%);
      }
      to {
        transform: translateY(0);
      }
    }

    @keyframes fx-select-dropdown-animation-top {
      from {
        transform: translateY(100%);
      }
      to {
        transform: translateY(0);
      }
    }

    > ul {
      width: 100%;
      height: 100%;
      max-height: 200px;
      border-radius: $border-radius-default;
      overflow-y: auto;
      background-color: $autocomplete-background;
      border: 1px solid $autocomplete-border-color;
      box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .1);
      box-sizing: border-box;
      transform-origin: top center;
      transition: all 0.3s;
      animation: fx-select-dropdown-animation-bottom 0.15s;

      &::after {
        content: '';
        position: absolute;
        top: -1px;
        left: 35px;
        display: block;
        width: 0;
        height: 0;
        border-color: transparent;
        border-style: solid;
        margin-right: 3px;
        border-bottom-color: $autocomplete-background;
        border-width: 6px;
        filter: drop-shadow(0 2px 12px rgba(0, 0, 0, .03));
      }

      &.top {
        animation: fx-select-dropdown-animation-top 0.15s;

        &::after {
          top: auto;
          bottom: -6px;
          border-bottom-color: transparent;
          border-top-color: $autocomplete-background;
        }
      }

      > li {
        font-size: 14px;
        padding: 0 20px;
        position: relative;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        color: $autocomplete-font-color;
        height: 34px;
        line-height: 34px;
        box-sizing: border-box;
        cursor: pointer;
        transition: all 0.15s;

        &:hover, &.active {
          color: $autocomplete-active-color;
          background-color: $autocomplete-active-background-color;
        }
      }
    }
  }
}
